package com.uzai.console.service.mini;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.uzai.console.dto.mini.minicode.MiniCodeDto;
import com.uzai.console.dto.mini.minicode.MiniCodeIdDto;
import com.uzai.console.dto.mini.minicode.MiniCodeQuery;
import com.uzai.console.dto.mini.minicode.MiniCodeRefreshDto;
import com.uzai.console.entity.MiniCode;
import com.uzai.console.vo.mini.minicode.MiniCodeVo;
import com.uzai.console.vo.mini.minicode.MiniTemplateVo;

import java.util.List;

/**
 * @author liuqi
 * @date 2021年08月13日 11:33
 */
public interface MiniCodeService {

    /**
     * 分页查询小程序代码管理列表
     * @author liuqi
     * @date 2021/8/13 11:38
     * @return CmsTbGoodsInfoVo
     */
    Page<MiniCodeVo> findMiniCodeByPage(MiniCodeQuery miniCodeQuery);

    /**
     * 查询小程序代码管理列表
     * @author liuqi
     * @date 2021/8/13 11:38
     * @return CmsTbGoodsInfoVo
     */
    MiniCodeVo findMiniCodeById(MiniCodeIdDto miniCodeIdDto);

    /**
     * 添加小程序代码管理信息
     * @author liuqi
     * @date 2021/8/13 11:38
     * @return null
     */
    void addMiniCode(MiniCodeDto miniCodeDto);

    /**
     * 修改小程序代码管理信息
     * @author liuqi
     * @date 2021/8/13 11:38
     * @return null
     */
    void updateMiniCode(MiniCodeDto miniCodeDto);

    /**
     * 删除小程序代码管理信息
     * @author liuqi
     * @date 2021/8/13 11:38
     * @return null
     */
    void deleteMiniCode(MiniCodeIdDto miniCodeIdDto);

    /**
     * 查询代码管理区域列表
     * @author liuqi
     * @date 2021/8/13 11:38
     * @return null
     */
    List<MiniTemplateVo> fingMiniTemplateList();

    /**
     * 小程序代码管理刷新最新版本
     * @author liuqi
     * @date 2021/8/13 11:38
     * @return null
     */
    void refreshMiniCode(MiniCodeRefreshDto miniCodeRefreshDto);

    /**
     * 小程序代码管理提交审核
     * @author liuqi
     * @date 2021/8/13 11:38
     * @return null
     */
    void checkMiniCode(MiniCodeIdDto miniCodeIdDto);

    /**
     * 小程序代码管理发布版本
     * @author liuqi
     * @date 2021/8/13 11:38
     * @return null
     */
    void releaseMiniCode(MiniCodeIdDto miniCodeIdDto);

    /**
     * 查询小程序代码管理最新版本信息
     * @author liuqi
     * @date 2021/8/13 11:38
     * @return null
     */
    MiniCodeVo findNewestByAppId(MiniCodeRefreshDto miniCodeRefreshDto);

}
